/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package usocalculadora;

/**
 *
 * @author Magaly
 */
public interface Stack<E> {
    
    /**
    *Item es agregado al stack.
    * @param E item, valor a aagregar al stack  
    * @return ningun valor
    */

    public void push(E item);
   // pre: 
   // post: item is added to stack
   // will be popped next if no intervening push
   
    
    /**
    *Se quita un valor del stack.
    * @param ninguno  
    * @return E valor que fue removido del stack.
    */
    
   public E pop();
   // pre: stack is not empty
   // post: most recently pushed item is removed and returned
   
   /**
    *El siguiente valor a ser removido del stack.
    * @return E, el valor a remover.
    */
   
   public E peek();
   // pre: stack is not empty
   // post: top value (next to be popped) is returned
   
   
   /**
    *Revisar que la pila esta vacia.
    * @return boolean true si la pila esta vacia.
    */
   
   public boolean empty();
   // post: returns true if and only if the stack is empty
   
   
   /**
    *Tamaño de la pila.
    * @return int numero de elementos en la pila.
    */
   
   public int size();
   // post: returns the number of elements in the stack

    
}
